// components_helper.h
// AppdicExtract / Makehfile
// AppdicExtract extracts APPDIC definition into extract.<applnbr> file / Makehfile creates defns<applnbr>.h file 
// Copyright (C) 2003, 2004, 2005 eXegeSys, Inc.
// Copyright (C) 2008 Bruce A. James
//
// This program is part of the Protea Project.
//
// The Protea Project is free software; you can redistribute it and/or modify it 
// under the terms of the GNU General Public License as published by the 
// Free Software Foundation, either version 3 of the License, or (at your 
// option) any later version.
//
// The Protea Project is distributed in the hope that it will be useful, but 
// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 
// for more details.
// 
// You should have received a copy of the GNU General Public License along 
// with this program.  If not, see <http://www.gnu.org/licenses/>.
//
// Please send correspondence to:
//
// theproteaproject@gmail.com
//

#ifndef __PROTEA_COMPONENTS_HELPER_H__
#define __PROTEA_COMPONENTS_HELPER_H__

class XCAPPDICComponents {
public:
	bool extract_all;

	XCAPPDICComponents();
	virtual void OnComponentLoad( XCBuffer* buffer ) = 0;
	void LoadComponentNumbers( const char* input, XCTxn* txn, XCAppInterface* app, long application );

	long comp_count;
	struct t_comp_fields {
		XCField* comp;
		t_comp_fields* next;
	};
	t_comp_fields *comp_fields;
};

#endif

